#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
__author__ = "Administrator"
__name__="mult_semaphore"
__date__="2016/9/14"
__time__="16:52"
"""
# semaphore用来控制对共享资源的访问数据，例如池的最大连接数。

import multiprocessing
import time

def worker(s,i):
    s.acquire()
    print(multiprocessing.current_process().name+"acquire")
    time.sleep(i)
    print(multiprocessing.current_process().name+"release")
    s.release()

if __name__=="__main__":
    s = multiprocessing.Semaphore(2)
    for i in range(5):
        p = multiprocessing.Process(target=worker,args=(s,i*2))
        p.start()

#semaphore 限制了最多有2个进程同时执行。